package com.itheima.bigevents.pojo;



import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.*;
import lombok.Data;

import java.time.LocalDateTime;

@Data
public class User {
    @NotNull
    private Integer id;//主键ID

//    @NotNull
//    @Size(min=4, max=20, message="用户名长度必须在4到20之间")
//    @Pattern(regexp="^[a-zA-Z0-9_-]{4,20}$", message="用户名只能包含字母、数字、下划线和短横线")
    private String username;//用户名

//    @NotNull
//    @Size(min = 6, max = 20, message = "密码长度必须在6到20之间")
//    @Pattern(regexp = "^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{6,}$", message = "密码必须包含字母和数字")
    @JsonIgnore //把当前对象转换成json字符串时忽略该属性
    private String password;//密码

    private String phone;//手机号
    @NotEmpty
    @Pattern(regexp = "^[a-zA-Z0-9_-]{1,20}$", message = "昵称只能包含字母、数字、下划线和短横线")
    private String nickname;//昵称
    @NotEmpty
    @Email
    private String email;//邮箱
    private String userPic;//用户头像地址
    private LocalDateTime createTime;//创建时间
    private LocalDateTime updateTime;//更新时间
}
